package com.tedu.api.thread;

import org.omg.CORBA.PUBLIC_MEMBER;

/**
 * JDK1.8 新语法  支持Lambda写法，广泛应用项目中
 * Lambda表达式--->简化：集合【遍历集合、过滤文件方法】、
 *       “接口创建、抽象类创建、匿名内部类创建“Comparator比较器
 *       创建【函数式遍历】
 * lambda功能性接口--实现：有一个方法的接口，并且打印对应数据
 * lambda表达式语法：()->{}
 *
 * 1.创建接口Insert---使用子类方式实现接口
 * 2.创建接口Insert---使用匿名内部类方式实现接口
 * 3.创建Lambda---接口创建
 */
public class LambdaDemo {
    public static void main(String[] args) {
   /*    Insert insert=new Insert() {
            public long Dian(long money,int day) {
               return 1L;
            }
        };
        insert.Dian(10,1);*/
        //Lambda表达式写法 ()->{}
        /**
         * Lambda表达式支持：接口使用匿名内部类方式创建
         * ()代表方法的参数：无参数情况----()不可以删除
         *                 有参数情况---一个参数---()可以删除
         *                          ---两个及以上参数---()不可以删除
         *                          (形参1，形参2)
         * ->代表new创建对象过程
         * {}代表方法中实现：返回值 void  直接输出语句---可以去掉{}
         *                 返回值 集合   不可以去掉{}
         *                 返回值 java数据类型  不可以去掉{}
         *
         */
       Insert insert=(money,day)->{return 1L;};
        long dian=insert.Dian(10,1);
        System.out.println("用了多少"+dian+"度");
    }
}
//创建接口 Insert
interface Insert{
    public long Dian(long money,int day);
}
//创建子类 实现Insert
/*class Computer implements Insert{
    public long Dian(long money) {
        return 100;
    }
}*/
